package cn.tedu.egmybatis3.mapper;

import cn.tedu.egmybatis3.pojo.entity.Product;
import cn.tedu.egmybatis3.pojo.vo.ProductVO1;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

@Mapper
public interface ProductMapper {
    /**
     * 第1题：添加一个商品信息 `insertProduct`；
     */
    int insertProduct(Product product);

    /**
     * 第2题：通过`id`查询一个商品的标题和价格 `selectSingleProduct`；
     */
    ProductVO1 selectSingleProduct(int id);

    /**
     * 第3题：通过`id` 删除一个商品信息 `deleteById`；
     */
    int deleteById(int id);

    /**
     * 第4题：通过 `id` 批量删除商品信息 `deleteByIds` ，要求使用 `List` 集合方式；
     */
    int deleteByIds(List<Integer> ids);

    /**
     * 第5题：通过 `id` 动态修改商品信息 `dynamicUpdate` ；
     */
    int dynamicUpdate(Product product);

    /**
     * 第6题：统计商品总数量 `selectCount`；
     */
    int selectCount();

}
